1. Field of the Invention
The present invention relates to a distribution technique for distributing an application to a device.
2. Description of the Related Art
Open Services Gateway initiative (OSGi) framework has been proposed which manages the lifecycle of an application such as starting and stopping the application. The OSGi framework defines an application format as a jar file that is a compression format of Java (Registered Trademark). The jar file merges a plurality of class files in one as an archive. The jar file interiorly includes a manifest file called MANIFEST.MF and the description of the jar file is set forth. By describing attributes of the OSGi specification in the manifest file, the OSGi framework manages the lifecycle of an application in accordance with the described attributes.
The application main body is defined as a host bundle in the OSGi specification. Furthermore, the modified or extended portion (extension application program) of the host bundle is defined as a fragment bundle. The fragment bundle does not independently operate and is a bundle that is added (attached) to the class loader space of the host bundle. During modification or extension of the application, use of the fragment bundle for modification or extension may enables release and evaluation of only differences, to thereby promote development efficiency or reduction in the number of testing and evaluation processing steps.
Attempts are being made to install and mount an application from an external on an image forming apparatus, and an image forming apparatus has been proposed which mounts a configuration that is compliant with the OSGi framework.
Japanese Patent Application Laid-Open No. 2011-14106 discloses an information processing apparatus that stores a license file that has been used to install a main application in a storage unit, and install the extension file by using the license file.
However, conventionally a distribution apparatus has not been proposed that can distribute an application program together with an extension application program relating to the application program. Furthermore, in the conventional technique, the extension application program can be installed without conditions, and the distribution of the extension application program is not controlled depending on the type of extension application program. Consequently, in the conventional technique, it is impossible to prepare an extension application program on a fee basis or fee-free basis, and control the installation depending on the type of the extension application.